#ifndef CIGEOM_GEOMETRYINSTANCE_H
#define CIGEOM_GEOMETRYINSTANCE_H

#include "../Core/Size.h"
#include "../Core/Orientation.h"

#include "Geometry.h"

namespace CIGeom {
    struct __declspec(deprecated("** GeometryInstance is deprecated **")) GeometryInstance {            

    public:        
        GeometryInstance (const char* n, Geometry& g);              //Constructor
        GeometryInstance (const std::string& n, Geometry& g);       //Constructor
        virtual ~GeometryInstance ();                               //Destructor
        
    protected:
        const char* name;               //The geometry instance name

        Geometry& geometry;             //The geometry reference
        Box transformedBox;             //The geometry instance transformed bounding box
        Point pos;                      //The geometry instance position into the scene
        Size size;                      //The geometry instance size
        Orientation orientation;        //The geometry instance orientation

    public:        
        //Utility Methods
        void Render();                  //Method called to render the geometry instance

    };
                    

}
#endif /* CIGEOM_GEOMETRYINSTANCE_H */
